﻿#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
//struct S
//{
//	int a;
//	int arr[];
//};
//
//struct S1
//{
//	int a;
//	int arr[0];
//}type;
//
//int main()
//{
//	printf("%zd\n", sizeof(struct S));
//	printf("%zd\n", sizeof(type));
//	return 0;
//}

//struct S
//{
//	int a;
//	int arr[];
//};
//
//int main()
//{
//	struct S* ps = (struct S*)malloc(sizeof(struct S) + 20 * sizeof(int));
//	ps->a = 100;
//	for (int i = 0; i < 20; i++)
//	{
//		ps->arr[i] = i + 1;
//	}
//	struct S* tmp = 0;
//	tmp = (struct S*)realloc(ps, sizeof(struct S) + 40 * sizeof(int));
//	if (tmp!=NULL)
//	{
//		ps = tmp;
//	}
//	else
//	{
//		perror("realloc");
//		return 1;
//	}
//	for (int i = 0; i < 40; i++)
//	{
//		printf("%d ", ps->arr[i]);
//	}
//	free(ps);
//	ps = NULL;
//	return 0;
//}

//struct S
//{
//	int a;
//	int* arr;
//};

//int main()
//{
//	struct S* ps = (struct S*)malloc(sizeof(struct S));
//	if (ps==NULL)
//	{
//		perror("malloc");
//		return 1;
//	}
//	ps->a = 100;
//	int* tmp = (int*)malloc(20 * sizeof(int));
//	if (tmp!=NULL)
//	{
//		ps->arr = tmp;
//	}
//	else
//	{
//		return 1;
//	}
//	for (int i = 0; i < 20; i++)
//	{
//		ps->arr[i] = i + 1;
//	}
//	tmp = (int*)realloc(ps->arr, 40 * sizeof(int));
//	if (tmp!=NULL)
//	{
//		ps->arr = tmp;
//	}
//	else
//	{
//		perror("realloc");
//		return 1;
//	}
//	for (int i = 0; i < 40; i++)
//	{
//		printf("%d ", ps->arr[i]);
//	}
//	free(tmp);
//	tmp = NULL;
//	free(ps);
//	ps = NULL;
//	return 0;
//}

//struct S
//{
//	int a;
//	int* arr;
//};
//
//int main()
//{
//	struct S* ps= (struct S*)malloc(sizeof(struct S));
//	if (ps==NULL)
//	{
//		perror("malloc");
//		return 1;
//	}
//	ps->a = 100;
//	int* tmp = (int*)malloc(sizeof(int) * 20);
//	if (tmp!=NULL)
//	{
//		ps->arr = tmp;
//	}
//	else
//	{
//		perror("malloc");
//		return 1;
//	}
//	for (int i = 0;  i < 20;  i++)
//	{
//		ps->arr[i] = i + 1;
//	}
//	tmp = (int*)realloc(ps->arr, sizeof(int) * 40);
//	if (tmp != NULL)
//	{
//		ps->arr = tmp;
//	}
//	else
//	{
//		perror("malloc");
//		return 1;
//	}
//	for (int i = 0; i < 40; i++)
//	{
//		printf("%d ", ps->arr[i]);
//	}
//	free(tmp);
//	tmp = NULL;
//	free(ps);
//	ps = NULL;
//	return 0;
//}

//#include <stdio.h>
//int main()
//{
//	int a = 10000;
//	FILE* pf = fopen("test.txt", "wb");
//	fwrite(&a, 4, 1, pf);//⼆进制的形式写到⽂件中
//	fclose(pf);
//	pf = NULL;
//	return 0;
//}


//int main()
//{
//	//FILE* pf = fopen("C:\\Users\\zg112\\Desktop\\data.txt", "w");
//	FILE* pf = fopen(".\\..\\data.txt", "w");
//	if (pf==NULL)
//	{
//		perror("fopen");
//		return 1;
//	}
//
//	fclose(pf);
//	pf = NULL;
//	return 0;
//}

//int main()
//{
//	//打开文件
//	FILE* ps = fopen("data.txt", "w");
//	if (ps==NULL)
//	{
//		perror("fopen");
//		return 1;
//	}
//	//写入文件
//	fputc('a', ps);
//	//关闭文件
//	fclose(ps);
//	ps = NULL;
//	return 0;
//}

//int main()
//{
//	FILE* ps = fopen("data.txt", "w");
//	for (int i = 'a'; i < 'z'; i++)
//	{
//		fputc(i, ps);
//	}
//	fclose(ps);
//	ps = NULL;
//	return 0;
//}

//int main()
//{
//	FILE* ps = fopen("data.txt", "w");
//	for (int i = 'a'; i < 'z'; i++)
//	{
//		fputc(i, ps);
//	}
//	fclose(ps);
//	ps = NULL;
//	return 0;
//}

//int main()
//{
//	FILE* ps = fopen("data.txt", "r");
//	int ch = fgetc(ps);
//	printf("%c ", ch);	
//	ch = fgetc(ps);
//	printf("%c ", ch);
//		fclose(ps);
//	ps = NULL;
//	return 0;
//}


//int main()
//{
//	FILE* ps = fopen("data.txt", "r");
//	int ch = 0;
//	while (fgetc(ps)!=EOF)
//	{
//		printf("%c ", ps);
//	}
//
//	fclose(ps);
//	ps = NULL;
//	return 0;
//}


//int main()
//{
//	FILE* ps = fopen("data.txt", "r");
//	int ch = fgetc(ps);
//	printf("%c\n", ch);
//	 ch = fgetc(ps);
//	printf("%c\n", ch);
//	ch = fgetc(ps);
//	printf("%c\n", ch);
//	ch = fgetc(ps);
//	printf("%c\n", ch);
//	fclose(ps);
//	ps = NULL;
//	return 0;
//}

//int main()
//{
//	FILE* ps = fopen("data.txt", "r");
//	int ch =0;
//	while ((ch = fgetc(ps)) != EOF)
//	{
//		printf("%c ", ch);
//	}
//	fclose(ps);
//	ps = NULL;
//	return 0;
//}

//int main()
//{
//	int ch = fgetc(stdin);
//	fputc(ch , stdout);
//
//	return 0;
//}

//int main()
//{
//	int ch = fgetc(stdin);
//	fputc(ch, stdout);
//	return 0;
//}